<template>
    <div>
        <el-card>
        <!--查询添加-->
        <el-row>
              <el-col :span="8">
                <el-input placeholder="请输入内容" clearable v-model="queryInfo.queryString" class="input-with-select" @clear="findPage">
                  <el-button slot="append" icon="el-icon-search" @click="findPage"/>
                </el-input>
              </el-col>
        </el-row>
          <!--列表-->
        <el-table :data="tableList" stripe  :tree-props="{children: 'children', hasChildren: 'hasChildren'}"  row-key="id" >
              <el-table-column type="index" label="序号" />
              <el-table-column prop="title" label="标题" show-overflow-tooltip style="width:100px"/>
              <el-table-column prop="introduce" label="介绍" show-overflow-tooltip  style="width:100px"/>
              <el-table-column label="封面">
                    <template slot-scope="scope">
                        <el-image
                            style="height: 70px"
                            :src="scope.row.picCover"
                            :preview-src-list="preview(scope.row.picCover)">
                        </el-image>
                    </template>
              </el-table-column>
              <el-table-column label="视频课程">
                    <template slot-scope="scope">
                        <video
                            ref="videoPlay"
                            :src="scope.row.videoPath"
                            height="70px"
                            style="background-color: black"
                            controls="controls"
                        >
                            您的浏
                            览器不支持视频播放
                        </video>
                    </template>
              </el-table-column>
              <el-table-column prop="createTime" label="创建时间" />
              <el-table-column prop="createUid" label="创建人" />
              <el-table-column label="审核状态">
                        <template slot-scope="scope">
                            <el-switch @change="updateStatus(scope.row)" v-model="scope.row.status" />
                        </template>
              </el-table-column>
          <el-table-column fixed="right" label="操作" width="180">
            <template slot-scope="scope">
              <el-button type="danger" @click="deleteById(scope.row.id)"   size="small"  icon="el-icon-delete" circle/>
            </template>
          </el-table-column>
        </el-table>
          <!--底部分页条-->
        <el-pagination
          @size-change="handlePageSize"
          @current-change="handlePageNumber"
          :current-page="currentPage4"
          :page-sizes="[4, 25, 50, 100]"
          :page-size="queryInfo.pageSize"
          layout="total, sizes, prev, pager, next, jumper"
          :total="total"/>         
        </el-card>
    </div>
</template>

<script>
import {marked} from "marked";
export default {
    data(){
        return {
            queryInfo: {
              //页码
              pageNumber: 1,
              //页数
              pageSize: 4,
              //关键字
              queryString: ""
            },
            headers:{
                Authorization: sessionStorage.getItem("token")
            },
            imageUrl: null,
            videoUrl: null,
            //表格数据
            tableList:[],
            //总记录数
            total: 0,
            currentPage4: 1,
            //弹窗标题
            title: null,
            //是否打开会话框
            open1: false,
            
           
        }
    },

    methods:{
        
         /*头像预览*/
         preview(src){
            let arr = [];
            arr.push(src);
            return arr;
        },
        
        findPage(){
            this.$ajax.post("/course/findPageCheck", this.queryInfo).then((res)=>{
                this.tableList = res.data.rows;
                this.total = res.data.total;
            });
        },

    //页面改变事件
    handlePageNumber(newPageNumber){
      //将分页的新数据的参数传递给后端查询
      this.queryInfo.pageNumber = newPageNumber;
      //调分页方法
      this.findPage();
    },
    handlePageSize(newPageSize){
      this.queryInfo.pageSize = newPageSize;
      this.findPage();
    },


    //删除权限信息
    deleteById(id){
      this.$confirm('您将永久删除id是{' + id +' }的新闻资讯, 是否继续?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning'
      }).then(() => {
        //调用后端删除权限接口
        this.$ajax.delete(`/course/delete/${id}`).then(res => {
          this.$message.success(res.data.message);
          this.queryInfo.pageNumber = 1;
          this.findPage();
        })
      }).catch(() => {
        this.$message({
          type: 'info',
          message: '已取消删除'
        });
      });
    },
    updateStatus(row){
              this.$ajax.put(`/course/updateStatus/${row.id}`).then((res)=>{
                  this.$message.success("状态更新成功！")
              })
           },
    },
    created(){
        this.findPage();
    }
}
</script>

<style>
.avatar-uploader .el-upload {
    border: 1px dashed #d9d9d9;
    border-radius: 6px;
    cursor: pointer;
    position: relative;
    overflow: hidden;
}
.avatar-uploader .el-upload:hover {
    border-color: #409EFF;
}
.avatar-uploader-icon {
    font-size: 28px;
    color: #8c939d;
    width: 130px;
    height: 130px;
    line-height: 130px;
    text-align: center;
}
.avatar {
    width: 130px;
    height: 130px;
    display: block;
}
</style>